#include "VentanaCarteleraAdjuntos.h"
#include <iostream>

VentanaCarteleraAdjuntos::VentanaCarteleraAdjuntos() {
	add(this->adjuntos);
	set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
	// Crea el treemodel con las columnas especificadas en el .h y le setea
	// el treemodel al treeview
	modelo_adjuntos = Gtk::TreeStore::create(this->columnas);
	adjuntos.set_model(modelo_adjuntos);

	// Agrega a la vista las columnas a mostrar
	adjuntos.append_column("Curso", columnas.columna_codigoCurso);
	adjuntos.append_column("Clase", columnas.columna_codigoClase);
	adjuntos.append_column("Nombre", columnas.columna_nombreArchivo);

	show_all_children();
}

void VentanaCarteleraAdjuntos::agregarAdjuntos(std::string codCurso, std::string codClase, std::string nombreAdj) {
	this->agregarFila(codCurso, codClase, nombreAdj);
}

// Devuelve el codigo de curso y de clase para obtener el video del servidor
std::string VentanaCarteleraAdjuntos::getCodAdjuntos() {
	Glib::RefPtr<Gtk::TreeSelection> selector = adjuntos.get_selection();
	Gtk::TreeModel::iterator it = selector->get_selected();
	std::string cod;
	if(it) {
		Gtk::TreeModel::Row row = *it;
		Glib::ustring cod_aux = row[columnas.columna_nombreArchivo];
		cod = cod_aux.raw();
	}
	return cod;
}

void VentanaCarteleraAdjuntos::agregarFila(std::string codCurso, std::string codClase, std::string nombreAdj) {
	Gtk::TreeModel::Row fila_cursos = *(modelo_adjuntos->append());
	fila_cursos[columnas.columna_codigoCurso] = codCurso;
	fila_cursos[columnas.columna_codigoClase] = codClase;
	fila_cursos[columnas.columna_nombreArchivo] = nombreAdj;
}
